[INFO] cloning repository https://github.com/peter-lang/calc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/peter-lang/calc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpeter-lang%2Fcalc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpeter-lang%2Fcalc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9db127d6824d0289104b3617877e940abf0631a7
[INFO] testing peter-lang/calc against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpeter-lang%2Fcalc" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/peter-lang/calc
[INFO] finished tweaking git repo https://github.com/peter-lang/calc
[INFO] tweaked toml for git repo https://github.com/peter-lang/calc written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/peter-lang/calc on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/peter-lang/calc already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a498ff0b580a41207d0262e7ea9f90e4261879851f25ca4ea579057ca8bff442
[INFO] running `Command { std: "docker" "start" "-a" "a498ff0b580a41207d0262e7ea9f90e4261879851f25ca4ea579057ca8bff442", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a498ff0b580a41207d0262e7ea9f90e4261879851f25ca4ea579057ca8bff442", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a498ff0b580a41207d0262e7ea9f90e4261879851f25ca4ea579057ca8bff442", kill_on_drop: false }`
[INFO] [stdout] a498ff0b580a41207d0262e7ea9f90e4261879851f25ca4ea579057ca8bff442
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0c87819991b72017976c574ff3714e19d051bb3c95cb432407ab285c6f2aa5d0
[INFO] running `Command { std: "docker" "start" "-a" "0c87819991b72017976c574ff3714e19d051bb3c95cb432407ab285c6f2aa5d0", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.85
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling cc v1.0.99
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling rustls-pki-types v1.7.0
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling serde v1.0.203
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rustls v0.22.4
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.4
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling unicode-width v0.1.13
[INFO] [stderr]    Compiling iana-time-zone v0.1.60
[INFO] [stderr]    Compiling webpki-roots v0.26.3
[INFO] [stderr]    Compiling flate2 v1.0.30
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling syn v2.0.66
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling fd-lock v4.0.2
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling directories v5.0.1
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling variant_count v1.1.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.4
[INFO] [stderr]    Compiling yoke-derive v0.7.4
[INFO] [stderr]    Compiling zerovec-derive v0.10.2
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.203
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling rustyline v14.0.0
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]    Compiling zerofrom v0.1.4
[INFO] [stderr]    Compiling regex v1.10.5
[INFO] [stderr]    Compiling yoke v0.7.4
[INFO] [stderr]    Compiling zerovec v0.10.2
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling icu_collections v1.5.0
[INFO] [stderr]    Compiling icu_locid v1.5.0
[INFO] [stderr]    Compiling rustls-webpki v0.102.4
[INFO] [stderr]    Compiling icu_provider v1.5.0
[INFO] [stderr]    Compiling icu_locid_transform v1.5.0
[INFO] [stderr]    Compiling icu_properties v1.5.0
[INFO] [stderr]    Compiling icu_normalizer v1.5.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling quick-xml v0.32.0
[INFO] [stderr]    Compiling idna v1.0.0
[INFO] [stderr]    Compiling url v2.5.1
[INFO] [stderr]    Compiling ureq v2.9.7
[INFO] [stderr]    Compiling calc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/debug.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 |     if fun == sub_unary {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]    |
[INFO] [stdout] 19 -     if fun == sub_unary {
[INFO] [stdout] 19 +     if std::ptr::fn_addr_eq(fun, sub_unary as fn(Value) -> Result<Value, CalcError>) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/debug.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 |     if fun == pow {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]    |
[INFO] [stdout] 30 -     if fun == pow {
[INFO] [stdout] 30 +     if std::ptr::fn_addr_eq(fun, pow as fn(Value, Value) -> Result<Value, CalcError>) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/debug.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 |     } else if fun == mul {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]    |
[INFO] [stdout] 32 -     } else if fun == mul {
[INFO] [stdout] 32 +     } else if std::ptr::fn_addr_eq(fun, mul as fn(Value, Value) -> Result<Value, CalcError>) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/debug.rs:34:15
[INFO] [stdout]    |
[INFO] [stdout] 34 |     } else if fun == div {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]    |
[INFO] [stdout] 34 -     } else if fun == div {
[INFO] [stdout] 34 +     } else if std::ptr::fn_addr_eq(fun, div as fn(Value, Value) -> Result<Value, CalcError>) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/debug.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 |     } else if fun == add {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]    |
[INFO] [stdout] 36 -     } else if fun == add {
[INFO] [stdout] 36 +     } else if std::ptr::fn_addr_eq(fun, add as fn(Value, Value) -> Result<Value, CalcError>) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/debug.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |     } else if fun == sub {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]    |
[INFO] [stdout] 38 -     } else if fun == sub {
[INFO] [stdout] 38 +     } else if std::ptr::fn_addr_eq(fun, sub as fn(Value, Value) -> Result<Value, CalcError>) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.73s
[INFO] running `Command { std: "docker" "inspect" "0c87819991b72017976c574ff3714e19d051bb3c95cb432407ab285c6f2aa5d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0c87819991b72017976c574ff3714e19d051bb3c95cb432407ab285c6f2aa5d0", kill_on_drop: false }`
[INFO] [stdout] 0c87819991b72017976c574ff3714e19d051bb3c95cb432407ab285c6f2aa5d0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c96309d8cfc9a224195f2a2ed4f3394a8aeca49170e693c1f3189d61ff0f929d
[INFO] running `Command { std: "docker" "start" "-a" "c96309d8cfc9a224195f2a2ed4f3394a8aeca49170e693c1f3189d61ff0f929d", kill_on_drop: false }`
[INFO] [stderr]    Compiling calc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result<number::Number, CalcError>`
[INFO] [stdout]    --> src/unit.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |         assert_eq!(result, Ok(Number::Rational(Rational::new(1, 8))));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         Result<number::Number, CalcError>
[INFO] [stdout]     |         Result<number::Number, CalcError>
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `CalcError`
[INFO] [stdout]    --> src/error.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub enum CalcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `CalcError` with `#[derive(PartialEq)]`
[INFO] [stdout]    --> src/error.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 + #[derive(PartialEq)]
[INFO] [stdout]   5 | pub enum CalcError {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result<number::Number, CalcError>`
[INFO] [stdout]    --> src/unit.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         assert_eq!(result, Ok(Number::Int(35)));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         Result<number::Number, CalcError>
[INFO] [stdout]     |         Result<number::Number, CalcError>
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `CalcError`
[INFO] [stdout]    --> src/error.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub enum CalcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `CalcError` with `#[derive(PartialEq)]`
[INFO] [stdout]    --> src/error.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 + #[derive(PartialEq)]
[INFO] [stdout]   5 | pub enum CalcError {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result<number::Number, CalcError>`
[INFO] [stdout]    --> src/unit.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         assert_eq!(result, Ok(Number::Int(59)));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         Result<number::Number, CalcError>
[INFO] [stdout]     |         Result<number::Number, CalcError>
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `CalcError`
[INFO] [stdout]    --> src/error.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub enum CalcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `CalcError` with `#[derive(PartialEq)]`
[INFO] [stdout]    --> src/error.rs:4:1
[INFO] [stdout]     |
[INFO] [stdout]   4 + #[derive(PartialEq)]
[INFO] [stdout]   5 | pub enum CalcError {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0369`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `calc` (bin "calc" test) due to 3 previous errors
[INFO] running `Command { std: "docker" "inspect" "c96309d8cfc9a224195f2a2ed4f3394a8aeca49170e693c1f3189d61ff0f929d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c96309d8cfc9a224195f2a2ed4f3394a8aeca49170e693c1f3189d61ff0f929d", kill_on_drop: false }`
[INFO] [stdout] c96309d8cfc9a224195f2a2ed4f3394a8aeca49170e693c1f3189d61ff0f929d
